****TESTS FREE-RIDING USING THE SHARE OF A SUBJECT-GRADE THAT A TEACHER TEACHES AS THE MEASURE OF HOW MUCH OF AN AWARD THEY'RE RESPONSIBLE FOR***

  *OPEN STUDENT LEVEL FILE*
clear all
set mem 3g
set more off
cap log close
set seed 7563543

* cd "C:\Users\mfl55\Dropbox\ASPIRE (1)\teacher free riding"
cd "C:\teacher free riding"
use hisd_data_freeriding_b.dta

sort campus year grade

**IDENTIFY THE MAXIMUM AWARD FOR A TEACHER
gen maxaward = 0
replace maxaward = 5000 if year == 2006 | year == 2007
replace maxaward = 7000 if year == 2008 | year == 2009

gen post = year >= 2006
drop if id == .
xtset id year

drop unit
gen unit = 1
egen enroll = sum(unit), by(campus year)
gen enroll2 = enroll^2
gen enroll3 = enroll^3
gen enroll4 = enroll^4

***NOTE THAT 9TH GRADE SCIENCE AND SOC ARE STANFORD RATHER THAN TAKS IN ASPIRE****
***FOR INITIAL ANALYSIS DO ONLY MATH & READING FOR ALL GRADES (TAKS) AND LANGUAGE FOR ALL GRADES (STANF)****
***SCIENCE & SOC FOR 10 & 11.FOR ACROSS DEPARTMENT ANALYSIS, LIMIT TO GRADES 10 & 11****


*ACHIEVEMENT LAGS
foreach subject in "math" "read" {
  gen ltaks_sd_scale_min_`subject' = l.taks_sd_scale_min_`subject'
 }
foreach subject in "math" "read" "lang" "socialstu" "science" {
  gen lstanford_sd_`subject'_scale = l.stanford_sd_`subject'_scale
 }

*NO SCIENCE & SOC IN 10TH GRADE SO USE 8TH GRADE LAG
foreach subject in "sci" "soc" {
  gen ltaks_sd_scale_min_`subject' = 0 if grade == 10 | grade == 11
  replace ltaks_sd_scale_min_`subject' = l.taks_sd_scale_min_`subject' if grade == 11
  gen l2taks_sd_scale_min_`subject' = 0 if grade == 10 | grade == 11
  replace l2taks_sd_scale_min_`subject' = l2.taks_sd_scale_min_`subject' if grade == 10
 }
 
 
 *GENERATE PRE-LAGS FROM 2004 - for 2004 and earlier use once lagged score
 foreach subject in "math" "read" {
 	gen taks_`subject'_2004 = l.taks_sd_scale_min_`subject'
	replace taks_`subject'_2004 = l3.taks_sd_scale_min_`subject' if year == 2007
	replace taks_`subject'_2004 = l4.taks_sd_scale_min_`subject' if year == 2008
	replace taks_`subject'_2004 = l5.taks_sd_scale_min_`subject' if year == 2009
}

 foreach subject in "math" "read" "lang" "science" "socialstu" {
 	gen stanf_`subject'_2004 = l.stanford_sd_`subject'_scale
	replace stanf_`subject'_2004 = l3.stanford_sd_`subject'_scale if year == 2007
	replace stanf_`subject'_2004 = l4.stanford_sd_`subject'_scale if year == 2008
	replace stanf_`subject'_2004 = l5.stanford_sd_`subject'_scale if year == 2009
}

 *GENERATE PRE-LAGS FROM 2003 - for2003 and earlier use once lagged score
 foreach subject in "math" "read" {
 	gen taks_`subject'_2003 = l.taks_sd_scale_min_`subject'
	replace taks_`subject'_2003 = l4.taks_sd_scale_min_`subject' if year == 2007
	replace taks_`subject'_2003 = l5.taks_sd_scale_min_`subject' if year == 2008
	replace taks_`subject'_2003 = l6.taks_sd_scale_min_`subject' if year == 2009
}

 foreach subject in "math" "read" "lang" "science" "socialstu" {
 	gen stanf_`subject'_2003 = l.stanford_sd_`subject'_scale
	replace stanf_`subject'_2003 = l4.stanford_sd_`subject'_scale if year == 2007
	replace stanf_`subject'_2003 = l5.stanford_sd_`subject'_scale if year == 2008
	replace stanf_`subject'_2003 = l6.stanford_sd_`subject'_scale if year == 2009
}

*GENERATE 2004 TEST SCORES FOR ALL YEARS FOR ACHIEVEMENT GROWTH REGRESSIONS
 foreach subject in "math" "read" {
	gen temp = taks_sd_scale_min_`subject' if year == 2004
 	egen taks_`subject'_2004_all = mean(temp), by(id)
	drop temp
}

 foreach subject in "math" "read" "lang" "science" "socialstu" {
	gen temp = stanford_sd_`subject'_scale if year == 2004
 	egen stanf_`subject'_2004_all = mean(temp), by(id)
	drop temp
}



compress

***GENERATE MEASURE OF STUDENT MOBILITY
xtset id year
gen changeschools = l.campus != campus if grade >= 10 & year >= 2003 & l.campus != .
gen enterdistrict = l.campus == . if year >= 2003


*LIMIT TO 2003 AND LATER
keep if year >= 2003

*LIMIT TO GRADES 9 - 11
keep if grade >= 9 & grade <= 11
keep id campus year *taks_sd_scale_min* *stanford_sd_*_scale grade year ethnicity econdis atrisk speced lep gifted enroll* female taks_*_2004* stanf_*_2004* taks_*_2003 stanf_*_2003 changeschools enterdistrict
compress


*MERGE IN STUDENT-TEACHER LINKS
sort id campus year
dmerge id campus year using secondary_classes, ukeep(tch_number course_type course crs_title)
drop if _merge == 2

*ALLOW FOR DIFFERENT LAG VALUES BY GRADE & YEAR
foreach year of numlist 2003 2004 2007 2008 2009 {
 foreach grade of numlist 9/11 {
  foreach exam of varlist stanf_*_2004 taks_*_2004 stanf_*_2003 taks_*_2003{
    gen `exam'_y`year'_g`grade' = `exam'*(year == `year')*(grade == `grade')
  }
 }
}


*MERGE IN ASPIRE COURSE LISTS --> WORKS WELL FOR 2006-07 & LATER BUT POORLY FOR BEFORE SO WILL NEED TO USE OLD METHOD FOR PRE-PERIOD
drop _merge
sort course
merge course using aspire_course_list_2009, keep(subject)
replace subject = "" if year <= 2005
replace course_type = "" if year >= 2006
replace course_type = "eng" if subject == "Language Arts" & year >= 2006
replace course_type = "read" if subject == "Reading" & year >= 2006
replace course_type = "math" if subject == "Math" & year >= 2006
replace course_type = "sci" if subject == "Science" & year >= 2006
replace course_type = "soc" if subject == "Social Studies" & year >= 2006
drop if course_type == ""

gen course_type_a = course_type
replace course_type_a = "eng/read" if course_type == "eng"
replace course_type_a = "eng/read" if course_type == "read"

*MERGE IN TEACHER PREPS AND INDICATOR FOR BEING AN ASPIRE COURSE - LIMIT TO ASPIRE COURSES
sort tch_number campus year  crs_title
cap drop _merge
merge tch_number campus year crs_title using teacher_preps.dta, keep(aspire_course teacher_preps)
tab aspire_course, missing
keep if aspire_course == 1


***MERGE IN TEACHER PERCENTAGE DATA
sort campus year grade course_type_a tch_number
drop _merge
merge campus year grade course_type_a tch_number using grade_percentages.dta
drop if _merge == 2

*DROP TEACHERS WITH FEWER THAN 10 STUDENTS
drop if students < 10

*MERGE IN DEPARTMENT SIZE
drop _merge
sort campus year grade
merge campus year grade using grade_departments
drop if _merge == 2

*MERGE IN TEACHER ID LINKED OVER TIME DERIVED FROM NAMES (CONDITIONAL ON BEING IN HISD IN 2006-07 OR LATER)
*NOTE THAT ONLY A SUBSET OF TEACHERS CAN BE LINKED BACK BEFORE 2006-07
destring tch_number, replace
drop _merge

**PRE -2006
save temp, replace
keep if year <= 2005
sort tch_number campus year 
merge tch_number campus year using teacher_linked_ids_pre
drop if _merge == 2
drop _merge
save temp1, replace

*POST - 2006
use temp, clear
keep if year >= 2006
sort tch_number
merge tch_number using teacher_linked_ids_post
drop if _merge == 2
drop _merge
append using temp1


*HISD HAD AN EXPERIMENTAL PROGRAM IN 2005-06 THAT WAS BASED ON INDIVIDUAL REWARDS, HENCE WE'LL DROP THIS YEAR
drop if year == 2005

*2006 IS BASED ON CAMPUS-WIDE DEPARTMENTAL AWARDS RATHER THAN GRADE LEVEL, SO DROP THIS YEAR TOO
drop if year == 2006

***ASSIGN WEIGHTS SO THAT EACH STUDENT HAS A VALUE OF 1 IN EACH SUBJECT
duplicates tag id year campus course_type, gen(classes_in_subject)
replace classes_in_subject = classes_in_subject + 1
gen weight = 1/classes_in_subject
drop if id == .

**GENERATE POST INDICATORS
gen post = year >= 2006
gen post_share_students = post*share_students
foreach var of varlist teachers_grade_* {
	gen post_`var' = post*`var'
}
gen school_year = campus*10000 + year

*GENERATE VARIABLES THAT POOL TAKS(10TH/11TH) AND STANFORD(9TH) FOR SCI AND SOC
	gen stanf_taks_soc = stanford_sd_socialstu_scale if grade == 9
	replace stanf_taks_soc = taks_sd_scale_min_soc if grade >= 10
	gen lstanford_sd_socialstu_scale_9 = lstanford_sd_socialstu_scale*(grade == 9)
	gen lstanford_sd_socialstu_scale_10 = lstanford_sd_socialstu_scale*(grade >= 10)


	gen stanf_taks_sci = stanford_sd_science_scale if grade == 9
	replace stanf_taks_sci = taks_sd_scale_min_sci if grade >= 10
	gen lstanford_sd_science_scale_9 = lstanford_sd_science_scale*(grade == 9)
	gen lstanford_sd_science_scale_10 = lstanford_sd_science_scale*(grade >= 10)


*GENERATE PRE-ASPIRE TEACHER VALUE-ADDED
	xi i.grade*i.year, prefix(_g)
	xi i.female i.ethnicity i.econdis i.atrisk i.speced i.lep i.gifted 
	
	*MATH
	areg taks_sd_scale_min_math ltaks_sd_scale_min_math _I* _g* enroll* if regular_hs == 1  & course_type == "math" & (year == 2003 | year == 2004) [pw = weight], cluster(campus) absorb(campus)
	predict gain_math if (year == 2003 | year == 2004), resid
	egen pre_aspire_va_math = mean(gain_math), by(teacher_link_id)

	*ENGLISH
	areg stanford_sd_lang_scale lstanford_sd_lang_scale _I* _g* enroll* if regular_hs == 1  & course_type == "eng" & (year == 2003 | year == 2004) [pw = weight], cluster(campus) absorb(campus)
	predict gain_lang if (year == 2003 | year == 2004), resid
	egen pre_aspire_va_lang = mean(gain_lang), by(teacher_link_id)

	*SCIENCE
	areg stanf_taks_sci lstanford_sd_science_scale_9 lstanford_sd_science_scale_10 _I* _g* enroll* if regular_hs == 1  & course_type == "sci" & (year == 2003 | year == 2004) [pw = weight], cluster(campus) absorb(campus)
	predict gain_sci if (year == 2003 | year == 2004), resid
	egen pre_aspire_va_sci = mean(gain_sci), by(teacher_link_id)
	
	*SOCIAL STUDIES
	areg stanf_taks_soc lstanford_sd_socialstu_scale_9 lstanford_sd_socialstu_scale_10 _I* _g* enroll* if regular_hs == 1  & course_type == "soc" & (year == 2003 | year == 2004) [pw = weight], cluster(campus) absorb(campus)
	predict gain_soc if (year == 2003 | year == 2004), resid
	egen pre_aspire_va_soc = mean(gain_soc), by(teacher_link_id)
		
	*MATH-STANFORD
	areg stanford_sd_math_scale lstanford_sd_math_scale _I* _g* enroll* if regular_hs == 1  & course_type == "math" & (year == 2003 | year == 2004) [pw = weight], cluster(campus) absorb(campus)
	predict gain_math_stanf if (year == 2003 | year == 2004), resid
	egen pre_aspire_va_math_stanf = mean(gain_math_stanf), by(teacher_link_id)
	
	
cap rm teachers_share_bal.txt
cap rm teachers_share_bal.xml


	gen white = ethnicity == 5
	gen black = ethnicity == 3
	gen hisp = ethnicity == 4
	gen econ_disadv = econdis == 1 | econdis == 2 | econdis == 99


   *IF BEFORE 2006-07, USE ONLY TEACHERS WITH NEW ID PROVIDED IN 2006-07
	xi i.grade*i.year, prefix(_g)

	*DROP TEACHERS WHO HAVE MORE THAN 90% SPECIAL EDUCATION or LEPSTUDENTS
	egen spec_ed_share = mean(speced), by(tch_number campus grade year subject)
	egen lep_share = mean(lep), by(tch_number campus grade year subject)
	drop if spec_ed_share > .8
	drop if lep_share > .8


set more off
capture log close
log using teacher_share-robust.log, replace

**BALANCE TESTS****

	*** SCHOOL-GRADE-YEAR FE ***

gen double school_grade_year = campus*10000000000 + year*100 + grade

		* Demographics *
/*
	foreach outcome of varlist female white black hisp econ_disadv atrisk speced lep gifted {

	***MATH --> TAKS MATH
	areg `outcome' post_share_students share_students if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	    
	***ENGLISH --> STANFORD LANGUAGE***
	areg `outcome'  post_share_students share_students if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	  
	***	SCIENCE POOLED
	areg  `outcome'  post_share_students share_students if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(school_grade_year)
  
	***SOC POOLED
	areg  `outcome' post_share_students share_students if  regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	}
	
		* Achievement *
	
	
	***MATH --> TAKS MATH
	areg taks_math_2004_all post_share_students share_students if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
    	***MATH --> Stanford MATH
	areg stanf_math_2004_all post_share_students share_students if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & stanf_math_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
	***ENGLISH --> STANFORD LANGUAGE***
	areg stanf_lang_2004_all  post_share_students share_students if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
  	***	SCIENCE POOLED
	areg   stanf_science_2004_all post_share_students share_students if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(school_grade_year)
  
	***SOC POOLED
	areg   stanf_socialstu_2004_all post_share_students share_students if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
		* Achievement Growth *
	
	***MATH --> TAKS MATH
	areg taks_math_2004_all post_share_students share_students taks_math_2003_y*_g* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
   	***MATH --> Stanford MATH
	areg stanf_math_2004_all post_share_students share_students stanf_math_2003_y*_g*  if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & stanf_math_2004 != .  [pw = weight], cluster(campus) absorb(school_grade_year)
	
	***ENGLISH --> STANFORD LANGUAGE***
	areg stanf_lang_2004_all  post_share_students share_students stanf_lang_2003_y*_g*  if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)
	
	***	SCIENCE POOLED
	areg   stanf_science_2004_all post_share_students share_students stanf_science_2003_y*_g*   if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(school_grade_year)
  
	***SOC POOLED
	areg   stanf_socialstu_2004_all post_share_students share_students stanf_socialstu_2003_y*_g*   if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(school_grade_year)


	*** TEACHER-YEAR FE ***

	gen teacher_year = string(tch_number) + string(campus) + string(year)

		* Demographics *

	foreach outcome of varlist female white black hisp econ_disadv atrisk speced lep gifted {

	***MATH --> TAKS MATH
	areg `outcome' post_share_students share_students _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	    
	***ENGLISH --> STANFORD LANGUAGE***
	areg `outcome'  post_share_students share_students _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	  
	***	SCIENCE POOLED
	areg  `outcome'  post_share_students share_students _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(teacher_year)
  
	***SOC POOLED
	areg  `outcome' post_share_students share_students _g* enroll* if  regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	}
	
		* Achievement *
	
	
	***MATH --> TAKS MATH
	areg taks_math_2004_all post_share_students share_students _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
    	***MATH --> Stanford MATH
	areg stanf_math_2004_all post_share_students share_students _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & stanf_math_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
	***ENGLISH --> STANFORD LANGUAGE***
	areg stanf_lang_2004_all  post_share_students share_students _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
  	***	SCIENCE POOLED
	areg   stanf_science_2004_all post_share_students share_students _g* enroll* if regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(teacher_year)
  
	***SOC POOLED
	areg   stanf_socialstu_2004_all post_share_students share_students _g* enroll* if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
		* Achievement Growth *
	
	***MATH --> TAKS MATH
	areg taks_math_2004_all post_share_students share_students taks_math_2003_y*_g* _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
   	***MATH --> Stanford MATH
	areg stanf_math_2004_all post_share_students share_students stanf_math_2003_y*_g*  _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & stanf_math_2004 != .  [pw = weight], cluster(campus) absorb(teacher_year)
	
	***ENGLISH --> STANFORD LANGUAGE***
	areg stanf_lang_2004_all  post_share_students share_students stanf_lang_2003_y*_g*  _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)
	
	***	SCIENCE POOLED
	areg   stanf_science_2004_all post_share_students share_students stanf_science_2003_y*_g* _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus) absorb(teacher_year)
  
	***SOC POOLED
	areg   stanf_socialstu_2004_all post_share_students share_students stanf_socialstu_2003_y*_g* _g* enroll*  if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus) absorb(teacher_year)

	*/

	*** REDUCED FORM USING 1/2004 DEPT. SIZE ***

	gen mean_share_math_2004a = 1/teachers_grade_math if course_type == "math" & year == 2004
	egen mean_share_math_2004 = mean(mean_share_math_2004a) if course_type == "math", by(campus grade) 
	
	gen mean_share_eng_2004a = 1/teachers_grade_eng  if course_type == "eng" & year == 2004
	egen mean_share_eng_2004 = mean(mean_share_eng_2004a) if course_type == "eng" , by(campus grade) 
		
	gen mean_share_sci_2004a = 1/teachers_grade_sci  if course_type == "sci" & year == 2004
	egen mean_share_sci_2004 = mean(mean_share_sci_2004a)  if course_type == "sci", by(campus grade)
	
	gen mean_share_soc_2004a = 1/teachers_grade_soc  if course_type == "soc" & year == 2004
	egen mean_share_soc_2004 = mean(mean_share_soc_2004a) if course_type == "soc", by(campus grade) 
	
	gen post_mean_share_math_2004 = post*mean_share_math_2004
	gen post_mean_share_eng_2004 = post*mean_share_eng_2004
	gen post_mean_share_sci_2004 = post*mean_share_sci_2004
	gen post_mean_share_soc_2004 = post*mean_share_soc_2004

	set more off
		* Demographics *

	xi i.grade*i.year, prefix(_g)
	
	foreach outcome of varlist female white black hisp econ_disadv atrisk speced lep gifted {

	***MATH --> TAKS MATH
	reg `outcome'  post_mean_share_math_2004 mean_share_math_2004 post _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)

	***ENGLISH --> STANFORD LANGUAGE***
	reg `outcome'  post_mean_share_eng_2004 mean_share_eng_2004 post _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)
	  
	***	SCIENCE POOLED
	reg  `outcome' post_mean_share_sci_2004 mean_share_sci_2004 post _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg  `outcome' post_mean_share_soc_2004 mean_share_soc_2004 post _g* enroll* if  regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)
	}
	
		* Achievement *
		
	***MATH --> TAKS MATH
	reg taks_math_2004_all  post_mean_share_math_2004 mean_share_math_2004 post _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)
		
	***ENGLISH --> STANFORD LANGUAGE***
	reg stanf_lang_2004_all  post_mean_share_eng_2004 mean_share_eng_2004 post _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)
	
  	***	SCIENCE POOLED
	reg  stanf_science_2004_all  post_mean_share_sci_2004 mean_share_sci_2004 post _g* enroll* if regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg  stanf_socialstu_2004_all  post_mean_share_soc_2004 mean_share_soc_2004 post _g* enroll* if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)
	
		* Achievement Growth *
	
	***MATH --> TAKS MATH
	reg taks_math_2004_all  post_mean_share_math_2004 mean_share_math_2004 post taks_math_2003_y*_g* _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)
		
	***ENGLISH --> STANFORD LANGUAGE***
	reg stanf_lang_2004_all  post_mean_share_eng_2004 mean_share_eng_2004 post stanf_lang_2003_y*_g*  _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)
	
	***	SCIENCE POOLED
	reg   stanf_science_2004_all  post_mean_share_sci_2004 mean_share_sci_2004 post stanf_science_2003_y*_g* _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg   stanf_socialstu_2004_all  post_mean_share_soc_2004 mean_share_soc_2004 post stanf_socialstu_2003_y*_g* _g* enroll*  if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)

	
	***REDUCED FORM USING PRE-ASPIRE SHARES****
	sort teacher_link_id grade course_type_a
	cap drop _merge
	merge m:1 teacher_link_id grade course_type_a using teacher_share_2004, keepusing(share_students_2004)
	gen post_share_students_2004 = post*share_students_2004

	keep if share_students_2004 != . & teacher_link_id != .
	
	
	xi i.grade*i.year i.campus, prefix(_g)
	
		* Demographics *

	foreach outcome of varlist female white black hisp econ_disadv atrisk speced lep gifted {

	***MATH --> TAKS MATH
	reg `outcome'  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)

	***ENGLISH --> STANFORD LANGUAGE***
	reg `outcome'  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)
	  
	***	SCIENCE POOLED
	reg  `outcome'  post_share_students_2004 share_students_2004 post _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg  `outcome'  post_share_students_2004 share_students_2004 post _g* enroll* if  regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)
	}
	
		* Achievement *
		
	***MATH --> TAKS MATH
	reg taks_math_2004_all  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)
		
	***ENGLISH --> STANFORD LANGUAGE***
	reg stanf_lang_2004_all  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)

  	***	SCIENCE POOLED
	reg  stanf_science_2004_all  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg  stanf_socialstu_2004_all  post_share_students_2004 share_students_2004 post _g* enroll* if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)
	
		* Achievement Growth *
	
	***MATH --> TAKS MATH
	reg taks_math_2004_all  post_share_students_2004 share_students_2004 post taks_math_2003_y*_g* _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . [pw = weight], cluster(campus)
		
	***ENGLISH --> STANFORD LANGUAGE***
	reg stanf_lang_2004_all  post_share_students_2004 share_students_2004 post stanf_lang_2003_y*_g*  _g* enroll* if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . [pw = weight], cluster(campus)
	
	***	SCIENCE POOLED
	reg   stanf_science_2004_all  post_share_students_2004 share_students_2004 post stanf_science_2003_y*_g* _g* enroll* if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  [pw = weight], cluster(campus)
  
	***SOC POOLED
	reg   stanf_socialstu_2004_all  post_share_students_2004 share_students_2004 post stanf_socialstu_2003_y*_g* _g* enroll*  if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . [pw = weight], cluster(campus)

	

	
log close
		
	
/*
	*PRE-ASPIRE TEACHER VALUE ADDED
	
	***MATH --> TAKS MATH
	areg pre_aspire_va_math post_share_students share_students post  _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & taks_math_2004 != . & teacher_link_id != . [pw = weight], cluster(campus) absorb(school_year)
	outreg2 post_share_students share_students using teachers_share_bal, excel dec(3) nocons ctitle("Math, teacher va, va")
	
    ***MATH --> Stanford MATH
	areg pre_aspire_va_math_stanf post_share_students share_students post  _g* enroll* if regular_hs == 1 & course_type == "math" & taks_sd_scale_min_math != . & stanf_math_2004 != .  & teacher_link_id != . [pw = weight], cluster(campus) absorb(school_year)
	outreg2 post_share_students share_students using teachers_share_bal, excel dec(3) nocons ctitle("Math, teacher va, va")
	
	***ENGLISH --> STANFORD LANGUAGE***
	areg pre_aspire_va_lang  post_share_students share_students  post   _g* enroll*   if regular_hs == 1 & course_type == "eng" & stanford_sd_lang_scale != . & stanf_lang_2004 != . & teacher_link_id != . [pw = weight], cluster(campus) absorb(school_year)
	outreg2 post_share_students share_students using teachers_share_bal, excel dec(3) nocons ctitle("Eng, teacher va, va")
	
  
	***	SCIENCE POOLED
	areg   pre_aspire_va_sci   post_share_students share_students  post  _g* enroll*     if  regular_hs == 1 &  course_type == "sci" & stanf_taks_sci != . & stanf_science_2004 != .  & teacher_link_id != . [pw = weight], cluster(campus) absorb(school_year)
	outreg2 post_share_students share_students using teachers_share_bal, excel dec(3) nocons ctitle("Sci, teacher va, va")

  
	***SOC POOLED
	areg   pre_aspire_va_soc   post_share_students share_students post   _g* enroll*  if regular_hs == 1  & course_type == "soc" & stanf_taks_soc != . & stanf_socialstu_2004 != . & teacher_link_id != . [pw = weight], cluster(campus) absorb(school_grade_year)
	outreg2 post_share_students share_students using teachers_share_bal, excel dec(3) nocons ctitle("Soc, teacher va, va")

		
				
		

	
